{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "from geoscilabs.em.MarineCSEM1D import show_canonical_model, FieldsApp, DataApp\n",
    "from IPython.display import HTML"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "from empymod import utils"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Marine CSEM apps\n",
    "\n",
    "This notebook is designed to understand fundamentals of marine controlled-source electromagnetics (CSEM). \n",
    "Backend engine is built upon https://github.com/prisae/empymod, and corresponding article can be found in \n",
    "the leading edge: \n",
    "\n",
    "Werthmüller, D., 2017, Getting started with controlled-source electromagnetic 1D modeling: The Leading Edge, 36, 352-355; doi: 10.1190/tle36040352.1."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Purpose\n",
    "\n",
    "Marine controlled-source electromagnetic (CSEM) method is designed to seek for a resistive hydrocarbon embedded in a conductive sea sediment. Usually, marine CSEM survey uses horizontal electric dipole (HED) source, which is towed by a  ship, and multiple recievers are depolyed on the ocean bottom. Latest receivers can measure three component of electric and magnetic fields. Most of commercial marine CSEM equipments are frequency domain system (~1Hz), so here we focus on the frequency domain. \n",
    "\n",
    "Final goal of this Jupyter notebook will be understanding frequency domain marine CSEM response, which is affected by resistivity value and its anisotropic nature of various geologic units (air, seawater, sediment, reservoir) and survey geometry (frequency, source-receiver offset). "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Canonical model\n",
    "\n",
    "We consider a canonical resistivity model, which includes a thin resistive layer (correspond to a reservoir containing signicant amount of hydrocarbon). Five layers having different resistivity values are considered: \n",
    "\n",
    "- air: perfect insulater ($\\rho_0)$~1e8 $\\Omega$m)\n",
    "- seawater: conductor ($\\rho_1)$~0.3 $\\Omega$m)\n",
    "- sea sediment (upper): conductor ($\\rho_2)$~1 $\\Omega$m)\n",
    "- reservoir: resistor ($\\rho_3)$~100 $\\Omega$m)) \n",
    "- sea sediment (lower): conductor ($\\rho_4)$~1 $\\Omega$m)\n",
    "\n",
    "Conductive sea sediment can have anisotropy, and often vertical resistivity ($\\rho_v$) is greater than horizontal resistivity ($\\rho_h$); e.g. $\\rho_v/\\rho_h \\simeq 2$. However, the hydrocarbon reservoir is often assumed to be isotropic. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 504x360 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "show_canonical_model()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Electric field propagation in time"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<iframe width=\"560\" height=\"315\" src=\"https://www.youtube.com/embed/p2fjg5pcEQM\" frameborder=\"0\" allow=\"autoplay; encrypted-media\" allowfullscreen></iframe>"
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "HTML('<iframe width=\"560\" height=\"315\" src=\"https://www.youtube.com/embed/p2fjg5pcEQM\" frameborder=\"0\" allow=\"autoplay; encrypted-media\" allowfullscreen></iframe>')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Poyting vector propagation in time"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<iframe width=\"600\" height=\"400\" src=\"https://www.youtube.com/embed/Nj8pqakoe8g\" frameborder=\"0\" allowfullscreen></iframe>"
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "execution_count": 5,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "HTML('<iframe width=\"600\" height=\"400\" src=\"https://www.youtube.com/embed/Nj8pqakoe8g\" frameborder=\"0\" allowfullscreen></iframe>')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Fields app"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "030ec65626f049b9bc0725396e2ac96a",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "interactive(children=(FloatText(value=0.5, description='f (Hz)'), FloatText(value=-950.0, description='src hei…"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "FieldsApp()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Data app"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "30ba37cc409a46288153dc22a647ff61",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "VBox(children=(HBox(children=(VBox(children=(FloatText(value=0.5, description='f (Hz)'), FloatText(value=-950.…"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "DataApp()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "anaconda-cloud": {},
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.6"
  },
  "nbpresent": {
   "slides": {
    "2a1825bf-35ff-4370-b129-ba51addc5c69": {
     "id": "2a1825bf-35ff-4370-b129-ba51addc5c69",
     "prev": "3d6a47d5-4fff-46fe-b063-1afce739efbb",
     "regions": {
      "c651f707-58e0-4b88-b861-0c6608fca1d5": {
       "attrs": {
        "height": 0.8,
        "width": 0.8,
        "x": 0.1,
        "y": 0.1
       },
       "content": {
        "cell": "6900d774-2898-4efd-9798-78bc8f08d0da",
        "part": "whole"
       },
       "id": "c651f707-58e0-4b88-b861-0c6608fca1d5"
      }
     }
    },
    "3d6a47d5-4fff-46fe-b063-1afce739efbb": {
     "id": "3d6a47d5-4fff-46fe-b063-1afce739efbb",
     "prev": "aa9c2bcf-e54f-4714-946e-18921616a039",
     "regions": {
      "e461f359-4831-4693-84fe-480f6c1db14a": {
       "attrs": {
        "height": 0.8,
        "width": 0.8,
        "x": 0.1,
        "y": 0.1
       },
       "content": {
        "cell": "1a31a0e1-bcf6-452d-aabb-c48c94a9e85d",
        "part": "whole"
       },
       "id": "e461f359-4831-4693-84fe-480f6c1db14a"
      }
     }
    },
    "54253e19-21cb-4738-94f0-109d6bbb2bde": {
     "id": "54253e19-21cb-4738-94f0-109d6bbb2bde",
     "prev": "5f5302d2-4747-4c5a-a6c3-1d0fc8f7fb66",
     "regions": {
      "1735c9df-b5c2-40d7-b562-b869e4b966cd": {
       "attrs": {
        "height": 0.8,
        "width": 0.8,
        "x": 0.1,
        "y": 0.1
       },
       "content": {
        "cell": "f85d2094-6d09-4627-a0ab-7cab37ed3c9f",
        "part": "whole"
       },
       "id": "1735c9df-b5c2-40d7-b562-b869e4b966cd"
      }
     }
    },
    "5f5302d2-4747-4c5a-a6c3-1d0fc8f7fb66": {
     "id": "5f5302d2-4747-4c5a-a6c3-1d0fc8f7fb66",
     "prev": "fc333044-619d-44bd-8c7f-0a53dd4b220a",
     "regions": {
      "41618366-0a77-4f2d-9d9b-77ed062d6959": {
       "attrs": {
        "height": 0.8,
        "width": 0.8,
        "x": 0.1,
        "y": 0.1
       },
       "content": {
        "cell": "83e23522-1665-45d6-8bc0-869b981a0e66",
        "part": "whole"
       },
       "id": "41618366-0a77-4f2d-9d9b-77ed062d6959"
      }
     }
    },
    "aa9c2bcf-e54f-4714-946e-18921616a039": {
     "id": "aa9c2bcf-e54f-4714-946e-18921616a039",
     "prev": "54253e19-21cb-4738-94f0-109d6bbb2bde",
     "regions": {
      "1b48f280-81c6-4746-8fff-091d4b10b448": {
       "attrs": {
        "height": 0.8,
        "width": 0.8,
        "x": 0.1,
        "y": 0.1
       },
       "content": {
        "cell": "0631a68b-7d4d-4326-abff-8628f2004afc",
        "part": "whole"
       },
       "id": "1b48f280-81c6-4746-8fff-091d4b10b448"
      }
     }
    },
    "b5a49768-441a-449c-bbf3-d2a7febf0235": {
     "id": "b5a49768-441a-449c-bbf3-d2a7febf0235",
     "prev": null,
     "regions": {
      "7ae15b0a-8675-4544-8708-f2e95dda286f": {
       "attrs": {
        "height": 0.8,
        "width": 0.8,
        "x": 0.1,
        "y": 0.1
       },
       "content": {
        "cell": "4cf9c8a2-cf5f-45cd-b5da-0b1c7fe23108",
        "part": "whole"
       },
       "id": "7ae15b0a-8675-4544-8708-f2e95dda286f"
      }
     }
    },
    "bc930404-89e7-4fc9-a1f9-e9edc1f4d1d4": {
     "id": "bc930404-89e7-4fc9-a1f9-e9edc1f4d1d4",
     "prev": "2a1825bf-35ff-4370-b129-ba51addc5c69",
     "regions": {
      "76296bab-9070-4528-b79c-558debc8f675": {
       "attrs": {
        "height": 0.8,
        "width": 0.8,
        "x": 0.1,
        "y": 0.1
       },
       "content": {
        "cell": "3ac01b43-1f53-4902-a857-5a0b0a6ef59b",
        "part": "whole"
       },
       "id": "76296bab-9070-4528-b79c-558debc8f675"
      }
     }
    },
    "fc333044-619d-44bd-8c7f-0a53dd4b220a": {
     "id": "fc333044-619d-44bd-8c7f-0a53dd4b220a",
     "prev": "b5a49768-441a-449c-bbf3-d2a7febf0235",
     "regions": {
      "fea6658a-c555-450d-b33b-0e44fe7b1cf8": {
       "attrs": {
        "height": 0.8,
        "width": 0.8,
        "x": 0.1,
        "y": 0.1
       },
       "content": {
        "cell": "d0a7e487-d7b9-418c-810f-f12d33c88c85",
        "part": "whole"
       },
       "id": "fea6658a-c555-450d-b33b-0e44fe7b1cf8"
      }
     }
    }
   },
   "themes": {}
  }
 },
 "nbformat": 4,
 "nbformat_minor": 1
}
